package com.wicket.okrapp.integration.dto;

import com.wicket.okrapp.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc AddWorkGroupReqDto
 * @使用场景
 */
@Data
public class AddWorkGroupReqDto extends BaseDto implements Serializable {

  /**
   * 冗余内容表主键ID
   */
  @NotNull(message = "目标ID不能为空")
  @ApiModelProperty("目标ID")
  private String entityId;

  /**
   * 归属对象ID
   */
  @NotNull(message = "评价模板ID不能为空")
  @ApiModelProperty("评价模板ID")
  private String evaluationTemplateId;

  /**
   * 虚拟组织成员就职记录ID
   */
  @NotNull(message = "虚拟组织成员就职记录ID不能为空")
  @ApiModelProperty("虚拟组织成员就职记录ID")
  private String virtualOrgInductionRecordId;

  /**
   * 身份人员ID
   */
  @NotNull(message = "身份人员ID不能为空")
  @ApiModelProperty("身份人员ID")
  private String originalRoleMemberId;

  /**
   * 个人账号
   */
  @NotNull(message = "个人账号不能为空")
  @ApiModelProperty("个人账号")
  private String userId;

  /**
   * 备注首位字母
   */
  @NotNull(message = "备注首位字母不能为空")
  @ApiModelProperty("备注首位字母")
  private String firstLetter;

  /**
   * 就职开始时间
   */
  @ApiModelProperty("就职开始时间")
  private Date inductionStartTime;

  /**
   * 组内职务名称
   */
  @ApiModelProperty("组内职务名称")
  private String virtualOrganizationPosition;

  /**
   * 组内职务描述
   */
  @ApiModelProperty("组内职务描述")
  private String virtualOrganizationPositionDesc;

  /**
   * 是否管理员 TRUE:是 FALSE:否
   */
  @NotNull(message = "是否管理员不能为空")
  @ApiModelProperty("是否管理员")
  private String isAdmin;

  /**
   * 是否负责人 TRUE:是 FALSE:否
   */
  @NotNull(message = "是否负责人不能为空")
  @ApiModelProperty("是否负责人")
  private String isPersonCharge;

  /**
   * 是否外部展示 TRUE:是 FALSE:否
   */
  @NotNull(message = "是否外部展示不能为空")
  @ApiModelProperty("是否外部展示")
  private String isDisplay;

}
